namespace ext.dd
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// A DragDrop implementation where the linked element follows the
	/// mouse cursor during a drag.
	/// </summary>
	/// <definedin>src\dd\DDCore.js</definedin>
	/// <definedin>src\dd\DDCore.js</definedin>
	[ScriptName("DD")]
	[ScriptNamespace("Ext.dd")]
	[Imported()]
	public partial class DD : ext.dd.DragDrop
	{
		
		#region Constructors
		/// <summary>Constructor</summary>
		public DD()
		{
		}
		#endregion
		
		#region Properties
		/// <summary>
		/// When set to true, the utility automatically tries to scroll the browser
		/// window when a drag and drop element is dragged near the viewport boundary.
		/// Defaults to true.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		[ScriptName("scroll")]
		[IntrinsicProperty()]
		public bool Scroll
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
			set
			{
			}
		}
		#endregion
		
		#region Methods
		/// <summary>
		/// Sets the pointer offset to the distance between the linked element&apos;s top
		/// left corner and the location the element was clicked
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		/// <param name="iPageX">the X coordinate of the click</param>
		/// <param name="iPageY">the Y coordinate of the click</param>
		[ScriptName("autoOffset")]
		public void AutoOffset(int iPageX, int iPageY)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Sets the pointer offset. You can call this directly to force the
		/// offset to be in a particular location (e.g., pass in 0,0 to set it
		/// to the center of the object)
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		/// <param name="iDeltaX">the distance from the left</param>
		/// <param name="iDeltaY">the distance from the top</param>
		[ScriptName("setDelta")]
		public void SetDelta(int iDeltaX, int iDeltaY)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Sets the drag element to the location of the mousedown or click event,
		/// maintaining the cursor location relative to the location on the element
		/// that was clicked. Override this if you want to place the element in a
		/// location other than where the cursor is.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		/// <param name="iPageX">the X coordinate of the mousedown or drag event</param>
		/// <param name="iPageY">the Y coordinate of the mousedown or drag event</param>
		[ScriptName("setDragElPos")]
		public void SetDragElPos(int iPageX, int iPageY)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Sets the element to the location of the mousedown or click event,
		/// maintaining the cursor location relative to the location on the element
		/// that was clicked. Override this if you want to place the element in a
		/// location other than where the cursor is.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		/// <param name="el">the element to move</param>
		/// <param name="iPageX">the X coordinate of the mousedown or drag event</param>
		/// <param name="iPageY">the Y coordinate of the mousedown or drag event</param>
		[ScriptName("alignElWithMouse")]
		public void AlignElWithMouse(System.Html.Element el, int iPageX, int iPageY)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Saves the most recent position so that we can reset the constraints and
		/// tick marks on-demand. We need to know this so that we can calculate the
		/// number of pixels the element is offset from its original position.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		/// <param name="iPageX">
		/// current x position (optional, this just makes it so we
		/// don&apos;t have to look it up again)
		/// </param>
		/// <param name="iPageY">
		/// current y position (optional, this just makes it so we
		/// don&apos;t have to look it up again)
		/// </param>
		[ScriptName("cachePosition")]
		public void CachePosition(int iPageX, int iPageY)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Sets up config options specific to this class. Overrides
		/// Ext.dd.DragDrop, but all versions of this method through the
		/// inheritance chain are called
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		[ScriptName("applyConfig")]
		public void ApplyConfig()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Event that fires prior to the onMouseDown event. Overrides
		/// Ext.dd.DragDrop.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		[ScriptName("b4MouseDown")]
		public void B4MouseDown()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Event that fires prior to the onDrag event. Overrides
		/// Ext.dd.DragDrop.
		/// </summary>
		/// <definedin>src\dd\DDCore.js</definedin>
		[ScriptName("b4Drag")]
		public void B4Drag()
		{
			throw new System.Exception("Imported - not implemented");
		}
		#endregion
	}
}
